3. Scatter函数

使用go.Scatter()函数可以绘制散点图、气泡图和线形图,常用参数如下:

3.1 散点图 Scatter

3.2 气泡图 Bubble

练习1. 绘制散点图 Sales and Profit Distrubution

导入数据文件'Sample - Superstore.xls',绘制散点图,展示商品子类别(Sub-Category)中'Paper'销售额(Sales)和利润(Profit)的相关关系,用气泡的颜色来展示Discount的取值大小,从而进一步分析这些变量之间的关系。

练习2. 绘制气泡图 Sales and Profit Distrubution

导入数据文件'Sample - Superstore.xls',绘制气泡图,展示销售额最高的前50名客户的销售额(X轴)和利润(Y轴)的关系,气泡的大小size和颜色color均体现折扣(Discount)这一变量,交互时增加显示的文本text:Customer Name和Discount(如交互所示)。

3.3 线形图 Line(时间序列 Time Series)

Plotly对时间序列的支持比较友好,既支持字符串格式,又支持日期/时间格式。只要传入的参数x是datetime.datetime对象,或者字符串strings,Plotly会自动识别为时间格式。

如果只想展示部分时间范围内的绘图结果,可以在布局layout中通过传递一个range参数即可实现这个功能。如果想要恢复默认的时间范围,可以单击界面右上角的Autoscale按钮。

练习3. 绘制时间序列图 Sales and Profit by day

导入数据文件'Sample - Superstore.xls',绘制时间序列图,展示2018年每天的销售额(Sales)和利润(Profit)。

练习4. 绘制时间序列图 Sales and Profit by month

导入数据文件'Sample - Superstore.xls',绘制时间序列图,展示2018年每个月的销售额(Sales)和利润(Profit)。

对Order Date进行groupby操作后,时间戳是每天(D),如果想要将其转换为每月(M),可以通过重新采样来实现。重新采样是指将时间序列从一个频率转换为另一个频率的过程。将更高频率的数据聚合到低频率被称为向下采样,反之则称为向上采样。Pandas对象配有resample方法,与groupby方法类似,调用resample时需要对数据分组,之后再调用聚合函数。